#if !defined(ximera_gui_icombobox_hpp)
#define ximera_gui_icombobox_hpp

// -----------------------------------------------------------

#include <ximera/gui/iwindow.hpp>

namespace ximera { namespace gui
{
    class XIMERA_API ICombobox : public IWindow
    {
    public:
        virtual ~ICombobox();

        virtual UInt32 itemCount() const = 0;

        virtual void addItem(String const& text) = 0;
        virtual void removeItem(UInt32 index) = 0;
        virtual void removeAllItems() = 0;

        virtual Int32 selectedIndex() const = 0;

        virtual bool readOnly() const = 0;
        virtual void readOnly(bool value) = 0;

        virtual bool isDroppedDown() const = 0;
        virtual void showDropDownList() = 0;
        virtual void hideDropDownList() = 0;
    };
}}

// -----------------------------------------------------------

#endif
